Sang Yeol Lee
March 09 2018
General Tips for participating Kaggle Competitions, Mark Peng, Taiwan Kaggle Master
일반적인 캐글의 데이터 셋은 Train set, Test Set으로 나뉨 (Submission 파일이 따로 있음)
Test Set은 대회 기간 동안 제출하면 채점 용도로 공개되어 있는 Public LB(Leardboard)와 대회 끝난 후 최종 채점을 평가하는 Private LB(Leardboard)가 있음
물론 데이터 셋이 일반적이지 않을 수 있음
캐글 프로세스는 데이터 분석의 절차 (서비스의 직접 반영하진 않지만, 커뮤니케이션은 포럼의 참가자들과 Kernel에서 Notebook 형태로 공유)
1단계 데이터 전처리, 2단계 싱글 모델, 3단계 변수 구성, 4단계 탐색적 자료 분석, 5단계 다양한 모델 구성, 6단계 앙상블, 7단계 예측
sensitivity : or Recall, 맞는 케이스에 대해 얼마나 많이 맞다고 실제로 예측했나?, \[ {\displaystyle \mathrm {TPR} ={\frac {\mathrm {TP} }{P}}={\frac {\mathrm {TP} }{\mathrm {TP} +\mathrm {FN} }}} \]
숫자 인식 문제에서 “5-detector”로 binary class 문제를 맞춘다고 한다면 제일 왼쪽 부분에서 threshold를 결정하게 되면(오른쪽은 5, 왼쪽은 5가 아님) True 5를 잘 맞추게 됨. 그래서 True 5 모두 다 5라고 예측함. 다만 Precision 측면에서 5라고 주장한 것중에서(전체 8개)에서 2개가 틀리게 되어 75%(2, 6)
중앙 부분에서 threshold를 결정하게 되면 Recall은 67% (True 5 중에서 2개를 놓치게 됨), Precision 측면에서는 5라고 주장한 것중에서 1개만 틀려서 80%.
제일 오른쪽 부분에서 threshold를 결정하게 되면 Recall은 50% (True 5중에서 3개를 놓치게 됨), Precision 측면에서 5라고 주장한 것중에서 하나도 틀리지 않아 100%
Low Bias - High Variance / Overfitting , 몸무게 = Beta 0 + 키 * Beta1 + 키2 * Beta2 + 키3 * Beta3… + 키8 + Beta8 일거야.
어떤 모델이든 Underfitting 하거나 Overfitting 할 수 있음, 적정선을 찾아야 함. 주로 Train 데이터를 Validaton 하여 해당 에러와 Test 에러를 같이 확인, Test Error를 보기 전에 평가 함수를 구성하여 Validation Error를 확인하는 것이 핵심! (Cross Validation, Local CV)
K-Fold Cross Validation (K=5)
균일하게 K 갯수만큼 Train 데이터를 쪼갬. k=5이면 5개로 쪼개서, Round 1~5번까지 Train data의 80%를 모델 구성하는데 사용하고 20%를 Validation 하는 데 사용, 해당 작업을 5번 거쳐서 평균 cv를 구하여 모델을 평가
local CV와 Public LB 간의 갭 차이가 나는 K를 찾는 것이 팁. 데이터가 Imbalance 되어 있다면 Stratified K-fold cv(목표변수의 클래스 비율을 똑같이 구성하여 쪼개는 방법)를 구성하라고 추천하고 있음
조는 참여 주제 / 사용 언어에 따라서 구성하려고 합니다, 같은 조 내에서는 되도록 1개 언어를 사용할 것을 권장함
조별, 개인으로 참여하기 어려운 분은 스터디 참여를 되도록 권장하진 않습니다.
조별로 스케줄은 알아서 정합니다(오프라인, 온라인), 스케줄은 진행하는 조장이 정하는 것으로 합니다.
조별로 역할 분담은 알아서 정함. 역할 분담도 진행하는 조장이 정하는 것으로 합니다.
토요일 격주로 만날 때는 발표 내용만 공유하는 것으로 합니다
개별로 모여서 진행할 때에는 장소 지원이 되나요?
참여할 수 있는 시간이 애매한데 어떻게 해야될까요?
자료는 어떻게 공유하면 되나요?
커뮤니케이션은 어떻게 하면 될까요?
잘 모르는데 참여해도 될까요?
스터디 참여하다가 불가피하게 시간이 안되면 어떻게 할까요?
후보 주제(1) : Google Cloud & NCAA® ML Competition 2018 Men
후보 주제(3) : Toxic Comment Classification Challenge
후보 주제(4) : Google Landmark Recognition Challenge